package com.qijia.common.utils;

import org.apache.commons.lang.StringUtils;

public class ProductUtils {

	/**
	 * 根据客户sku生成对应的工厂sku
	 * 
	 * @param cmtSku
	 * @return
	 */
	public final static String generateFtySkuByCmtSku(String cmtSku) {
		if (StringUtils.isEmpty(cmtSku))
			return null;
		return cmtSku + UtilsConstants.FTYSKU_CODE + RandomNumberUtils.getPk();
	}

	/**
	 * 根据客户sku生成对应的工厂sku
	 * 
	 * @param cmtSku
	 *            客户Sku号
	 * @param orderNo
	 *            订单号
	 * @param totalNum
	 *            订单总数量
	 * @param trackNo
	 *            订单产品序号
	 * @return
	 */
	public final static String generateFtySkuByCmtSku(String cmtSku,
			String orderNo, int totalNum, int trackNo) {
		if (StringUtils.isEmpty(cmtSku) || StringUtils.isEmpty(orderNo))
			return null;
		return cmtSku + UtilsConstants.FTYSKU_CODE + orderNo
				+ UtilsConstants.FTYSKU_CODE + totalNum
				+ UtilsConstants.FTYSKU_CODE + trackNo;
	}

	/**
	 * 根据客户sku生成对应的工厂sku，针对配件
	 * 
	 * @param cmtSku
	 *            客户Sku号
	 * @param orderNo
	 *            订单号
	 * @param totalNum
	 *            订单总数量
	 * @param trackNo
	 *            订单产品序号
	 * @param No
	 *            序列号
	 * @return
	 */
	public final static String generateFtySkuByCmtSku(String cmtSku,
			String orderNo, int totalNum, int trackNo, int No) {
		if (StringUtils.isEmpty(cmtSku) || StringUtils.isEmpty(orderNo))
			return null;
		return cmtSku + UtilsConstants.FTYSKU_CODE + orderNo
				+ UtilsConstants.FTYSKU_CODE + totalNum
				+ UtilsConstants.FTYSKU_CODE + trackNo
				+ UtilsConstants.FTYSKU_CODE + No;
	}

	/**
	 * 根据客户Sku获取款号
	 * 
	 * @param cmtSku
	 * @return
	 */
	public final static String getStyleNoByCmtSku(String cmtSku) {
		if (StringUtils.isEmpty(cmtSku) || cmtSku.trim().length() < 9)
			return null;
		try {
			return Integer.parseInt(cmtSku.substring(1, 8)) + "";
		} catch (Exception e) {
			return cmtSku.substring(1, 8);
		}
	}

	/**
	 * 根据工厂Sku获取款号
	 * 
	 * @param ftySku
	 * @return
	 */
	public final static String getStyleNoByFtySku(String ftySku) {
		return getStyleNoByCmtSku(ftySku);
	}

	public static void main(String[] args) {
		String sku = "dsahdashjdashj";
		System.out.println(getStyleNoByFtySku(sku));
	}
}
